Modern computer networks allow the exchange of vast amounts of information between many computer systems. A requirement often exists to store this information within high-capacity data storage systems that can be interconnected with each other to form a type of network referred to as a storage area network. A typical storage area network includes one or more host computer systems, typically referred to as servers, which interconnect through a switching fabric (i.e., one or more storage area network switches) to a group of data storage systems to allow access to the stored data by those host computer systems (i.e., by the servers) on behalf of client computer systems (e.g., end user computers) that request such data. Due to the complexity of storage area networks, network managers (i.e., users responsible for managing resources in the storage area network) often utilize a storage area network management application to manage the configuration and operation of resources such as host computer systems, switches, data storage systems and associated software applications and hardware devices within the storage area network.
A typical conventional storage area network management application provides a management server and a console program that provides a graphical user interface that allows users to graphically manage the resources within the storage area network. The conventional management application (e.g., the management server) also interacts with a number of agent software processes (referred to simply as agents) that execute on various host computer systems operating within the storage area network in order to manage individual resources. The agents, which are generally also considered to be part of the network management application, execute on host computer systems to receive commands from management server to configure and control the various managed resources within the storage area network.
As an example, in a typical storage area network management application, developers have created (e.g., programmed) agents specifically to manage respective types of resources within the storage area network such as agents for managing hosts (i.e., host agents), agents to manage switches (i.e., switch agents), agents to manage data storage system (i.e., storage system agents), agents to manage software applications (e.g., database agents) and so forth. Each agent operates to periodically collect configuration data associated with resources managed by those agents for reporting back to the management server. Using the configuration data collected by the agents, the management server can display the current status and configuration of resources within the storage area network to the network manager on the graphical user interface of the console.
Within a typical conventional network management application such as a storage area network management application, a network manager is able to operate the management server to remotely install and configure the agents programs themselves for operation upon various host computer systems in the storage area network. The installation process of an agent in a conventional network management application allows the network manager to identify a specific agent for installation on a specific host computer system within the storage area network. The installation process then guides the network manager through the steps of installing the selected agent on the selected host. If the agent to be installed is replacing an agent already installed on that host (i.e., with a newer version of the agent), the installation process replaces the old agent version with the new agent version. Once properly installed, the network manager can cause the management server to instruct the newly installed agent to begin execution on that host.